package Classe;

import java.util.ArrayList;
import java.util.Date;
import java.util.Observable;
import java.util.Observer;

import Classe.Chambre;

public class Sejour extends Observable {
	private LigneSejour m_LigneSejourCourante;
	private boolean m_estPaye;
	private ArrayList<LigneSejour> m_ListLigneSejour;
	
	public Sejour(Chambre chambre,Date dateCourante,Date dateDepart)
	{
		m_ListLigneSejour = new ArrayList<LigneSejour>();
		m_LigneSejourCourante = new LigneSejour(chambre,dateCourante,dateDepart);
		m_ListLigneSejour.add(m_LigneSejourCourante);
	}
	public ArrayList<LigneSejour> getListLigneSejour()
	{
		return m_ListLigneSejour;
	}
	public LigneSejour getLigneSejourCourante()
	{
		return m_LigneSejourCourante;
	}
	public boolean getEstPaye()
	{
		return m_estPaye;
	}
	public void setEstPaye(boolean pEstPaye)
	{
		getLigneSejourCourante().setDateDepart(getLigneSejourCourante().getDateTemporaire());
		m_estPaye = pEstPaye;
	}
	public void TransfererSejour(LigneSejour pLigneSejour)
	{
		m_LigneSejourCourante.setDateDepart(pLigneSejour.getDateCourante());
		m_LigneSejourCourante.setDateTemporaire(pLigneSejour.getDateCourante());
		m_LigneSejourCourante = pLigneSejour;
		m_ListLigneSejour.add(pLigneSejour);
	}
	public void notified(Observer o)
	{
		addObserver(o);
		setChanged();
		notifyObservers(m_LigneSejourCourante);
	}
}
